A Generic Halfedge Mesh Data Structure for .Net
نویسنده
چکیده
Polygonal meshes are used extensively in computer graphics. A polygonal mesh represents a shape, usually in 3D, by using a set of points, the vertices, connected by edges. Edges form the boundaries of faces. A mesh is convenient to work with because it explicitly represents the surface that one is working with—vertices, edges, and faces are discreetly enumerated and may be manipulated directly. Meshes are often stored by simply keeping a list of points with a list of faces, where each face is a list of vertices, and each vertex of a face is an index into the list of points. While this is simple to implement and manage, many common operations are slow and awkward. It is common to iterate over the neighbors of a mesh element—for example, to compute smooth contours in non-photorealistic rendering, it is necessary to examine faces adjacent to a face to trace contour chains. Another problem is that this mesh representation does not explicitly represent edges. For polyhedral contour rendering, it is necessary to iterate over all edges in a mesh. It is not immediately clear how one would do this without visiting the edges of every face, which means that each edge of a closed manifold mesh would be visited twice.
منابع مشابه
An Adaptive Multiresolution Mesh Representation for CPU-GPU Coupled Computation
In this paper, we present an adaptive multiresolution mesh representation exploring the computational differences of the CPU and the GPU. We build our representation considering a dense-polygon mesh simplified to a base mesh which stores the original geometry by means of an atlas structure. For both simplification and refinement processes, we present a hierarchical method based on stellar opera...
متن کاملUsing generic programming for designing a data structure for polyhedral surfaces
Software design solutions are presented for combinatorial data structures, such as polyhedral surfaces and planar maps, tailored for program libraries in computational geometry. Design issues considered are exibility, time and space eeciency, and ease-of-use. We focus on topological aspects of polyhedral surfaces and evaluate edge-based representations with respect to our design goals. A design...
متن کاملAdaptive multi-chart and multiresolution mesh representation
In this paper, we present an adaptive multi-chart and multiresolution mesh representation suitable for both the CPU and the GPU. We build our representation by simplifying a dense-polygon mesh to a base mesh and storing the original geometry in an atlas structure. For both simplification and resolution control, we extend a hierarchical method based on stellar operators to the GPU context. Durin...
متن کاملDesigning and Implementing a General Purpose Halfedge Data Structure
Halfedge data structures (HDS) are fundamental in representing combinatorial geometric structures, useful for representing any planar structures such as plane graphs and planar maps, polyhedral surfaces and boundary representations (BREPs), two-dimensional views of a three dimensional scene, etc. Many variants have been proposed in the literature, starting with the winged-edge data structure of...
متن کاملM4G: Manifolds for GPUs Library
The Manifolds for GPUs library – M4G – is a compendium of tools to build an atlas structure from a dense-polygon mesh to represent a surface in multiresolution in the GPU. The library is divided in two main parts: the first defines a halfedge-based mesh with stellar operators and √ 2-subdivision adaptivity; the second provides a set of applications to build a regular atlas-based representation ...
متن کامل